Voice over Internet Protocol (VoIP) is a technology used for the routing of voice conversations over a data network using Internet Protocol (IP). The data network may be the Internet or any other IP-based network, such as an enterprise intranet. VoIP networks are typically viewed as a lower cost alternative to traditional public switched telephone networks (PSTN).
A typical VoIP network is comprised of one or more application servers and a plurality of endpoints. The endpoints are network elements used to originate or terminate a call over the VoIP network, such as a VoIP phone, a PDA, a computer with VoIP functionality, etc. The application server provides call processing within the VoIP network to allow the endpoints to place and receive calls over the VoIP network. The protocol typically used between the endpoints and the application server for call setup, maintenance, and call teardown is Session Initiation Protocol (SIP), although other protocols may be used. The protocol typically used for data transfer over the VoIP network (i.e., bearer traffic for a VoIP call) is Real-time Transport Protocol (RTP), although other protocols may be used.
Unlike traditional analog phones, endpoints of a VoIP network need to be configured to connect to the VoIP network. The endpoints have local configuration parameters that need to be set by the network operator, by the user of the endpoint, or another party or system. Examples of local configuration parameters that need to be set include an SIP application server IP address, SIP timers, audio/video compression/decompression (CODEC) registrar, proxy, domain, user, etc. The endpoints typically provide a local configuration interface through which the user of the endpoint or a network operator can set or adjust the configuration parameters of the endpoint. The local configuration interface may be a menu-based or window-based interface that allows a user to enter values for the configuration parameters.
Systems that provide configuration files exist, but most systems require a device to be trusted by a network. In addition, trust is difficult to maintain as trust generally relies on a recipient having to trust information provided by a client to identify itself.